package com.example.intermingle.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * 
 * @TableName resources
 */
@TableName(value ="resources")
public class Resources implements Serializable {
    /**
     * 
     */
    @TableId
    private Integer resourcesId;

    /**
     * 资源url
     */
    private String url;

    /**
     * 路径
     */
    private String path;

    /**
     * 成分
     */
    private String component;

    /**
     * 资源名称
     */
    private String resourcesName;

    /**
     * 
     */
    private String iconcls;

    /**
     * 
     */
    private String keepalive;

    /**
     * 
     */
    private String parentid;

    /**
     * 
     */
    private String enabled;

    /**
     * 
     */
    private String requireauth;

    /**
     * 创建人
     */
    private String createdBy;

    /**
     * 修改人
     */
    private String updateBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date createdDate;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date updateDate;

    /**
     * 1有效 0无效
     */
    private String validFlag;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /**
     * 
     */
    public Integer getResourcesId() {
        return resourcesId;
    }

    /**
     * 
     */
    public void setResourcesId(Integer resourcesId) {
        this.resourcesId = resourcesId;
    }

    /**
     * 资源url
     */
    public String getUrl() {
        return url;
    }

    /**
     * 资源url
     */
    public void setUrl(String url) {
        this.url = url;
    }

    /**
     * 路径
     */
    public String getPath() {
        return path;
    }

    /**
     * 路径
     */
    public void setPath(String path) {
        this.path = path;
    }

    /**
     * 成分
     */
    public String getComponent() {
        return component;
    }

    /**
     * 成分
     */
    public void setComponent(String component) {
        this.component = component;
    }

    /**
     * 资源名称
     */
    public String getResourcesName() {
        return resourcesName;
    }

    /**
     * 资源名称
     */
    public void setResourcesName(String resourcesName) {
        this.resourcesName = resourcesName;
    }

    /**
     * 
     */
    public String getIconcls() {
        return iconcls;
    }

    /**
     * 
     */
    public void setIconcls(String iconcls) {
        this.iconcls = iconcls;
    }

    /**
     * 
     */
    public String getKeepalive() {
        return keepalive;
    }

    /**
     * 
     */
    public void setKeepalive(String keepalive) {
        this.keepalive = keepalive;
    }

    /**
     * 
     */
    public String getParentid() {
        return parentid;
    }

    /**
     * 
     */
    public void setParentid(String parentid) {
        this.parentid = parentid;
    }

    /**
     * 
     */
    public String getEnabled() {
        return enabled;
    }

    /**
     * 
     */
    public void setEnabled(String enabled) {
        this.enabled = enabled;
    }

    /**
     * 
     */
    public String getRequireauth() {
        return requireauth;
    }

    /**
     * 
     */
    public void setRequireauth(String requireauth) {
        this.requireauth = requireauth;
    }

    /**
     * 创建人
     */
    public String getCreatedBy() {
        return createdBy;
    }

    /**
     * 创建人
     */
    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    /**
     * 修改人
     */
    public String getUpdateBy() {
        return updateBy;
    }

    /**
     * 修改人
     */
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    /**
     * 创建时间
     */
    public Date getCreatedDate() {
        return createdDate;
    }

    /**
     * 创建时间
     */
    public void setCreatedDate(Date createdDate) {
        this.createdDate = createdDate;
    }

    /**
     * 修改时间
     */
    public Date getUpdateDate() {
        return updateDate;
    }

    /**
     * 修改时间
     */
    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    /**
     * 1有效 0无效
     */
    public String getValidFlag() {
        return validFlag;
    }

    /**
     * 1有效 0无效
     */
    public void setValidFlag(String validFlag) {
        this.validFlag = validFlag;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        Resources other = (Resources) that;
        return (this.getResourcesId() == null ? other.getResourcesId() == null : this.getResourcesId().equals(other.getResourcesId()))
            && (this.getUrl() == null ? other.getUrl() == null : this.getUrl().equals(other.getUrl()))
            && (this.getPath() == null ? other.getPath() == null : this.getPath().equals(other.getPath()))
            && (this.getComponent() == null ? other.getComponent() == null : this.getComponent().equals(other.getComponent()))
            && (this.getResourcesName() == null ? other.getResourcesName() == null : this.getResourcesName().equals(other.getResourcesName()))
            && (this.getIconcls() == null ? other.getIconcls() == null : this.getIconcls().equals(other.getIconcls()))
            && (this.getKeepalive() == null ? other.getKeepalive() == null : this.getKeepalive().equals(other.getKeepalive()))
            && (this.getParentid() == null ? other.getParentid() == null : this.getParentid().equals(other.getParentid()))
            && (this.getEnabled() == null ? other.getEnabled() == null : this.getEnabled().equals(other.getEnabled()))
            && (this.getRequireauth() == null ? other.getRequireauth() == null : this.getRequireauth().equals(other.getRequireauth()))
            && (this.getCreatedBy() == null ? other.getCreatedBy() == null : this.getCreatedBy().equals(other.getCreatedBy()))
            && (this.getUpdateBy() == null ? other.getUpdateBy() == null : this.getUpdateBy().equals(other.getUpdateBy()))
            && (this.getCreatedDate() == null ? other.getCreatedDate() == null : this.getCreatedDate().equals(other.getCreatedDate()))
            && (this.getUpdateDate() == null ? other.getUpdateDate() == null : this.getUpdateDate().equals(other.getUpdateDate()))
            && (this.getValidFlag() == null ? other.getValidFlag() == null : this.getValidFlag().equals(other.getValidFlag()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getResourcesId() == null) ? 0 : getResourcesId().hashCode());
        result = prime * result + ((getUrl() == null) ? 0 : getUrl().hashCode());
        result = prime * result + ((getPath() == null) ? 0 : getPath().hashCode());
        result = prime * result + ((getComponent() == null) ? 0 : getComponent().hashCode());
        result = prime * result + ((getResourcesName() == null) ? 0 : getResourcesName().hashCode());
        result = prime * result + ((getIconcls() == null) ? 0 : getIconcls().hashCode());
        result = prime * result + ((getKeepalive() == null) ? 0 : getKeepalive().hashCode());
        result = prime * result + ((getParentid() == null) ? 0 : getParentid().hashCode());
        result = prime * result + ((getEnabled() == null) ? 0 : getEnabled().hashCode());
        result = prime * result + ((getRequireauth() == null) ? 0 : getRequireauth().hashCode());
        result = prime * result + ((getCreatedBy() == null) ? 0 : getCreatedBy().hashCode());
        result = prime * result + ((getUpdateBy() == null) ? 0 : getUpdateBy().hashCode());
        result = prime * result + ((getCreatedDate() == null) ? 0 : getCreatedDate().hashCode());
        result = prime * result + ((getUpdateDate() == null) ? 0 : getUpdateDate().hashCode());
        result = prime * result + ((getValidFlag() == null) ? 0 : getValidFlag().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", resourcesId=").append(resourcesId);
        sb.append(", url=").append(url);
        sb.append(", path=").append(path);
        sb.append(", component=").append(component);
        sb.append(", resourcesName=").append(resourcesName);
        sb.append(", iconcls=").append(iconcls);
        sb.append(", keepalive=").append(keepalive);
        sb.append(", parentid=").append(parentid);
        sb.append(", enabled=").append(enabled);
        sb.append(", requireauth=").append(requireauth);
        sb.append(", createdBy=").append(createdBy);
        sb.append(", updateBy=").append(updateBy);
        sb.append(", createdDate=").append(createdDate);
        sb.append(", updateDate=").append(updateDate);
        sb.append(", validFlag=").append(validFlag);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}